<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Math Kernel Library</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Math_Kernel_Library"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Math_Kernel_Library rootpage-Math_Kernel_Library skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Math Kernel Library</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<style data-mw-deduplicate="TemplateStyles:r1295905060">
/* start https://en.wikipedia.org/ */
.mw-parser-output .infobox-subbox{padding:0;border:none;margin:-3px;width:auto;min-width:100%;font-size:100%;clear:none;float:none;background-color:transparent}.mw-parser-output .infobox-3cols-child{margin:auto}.mw-parser-output .infobox .navbar{font-size:100%}@media screen{html.skin-theme-clientpref-night .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media(min-width:640px){body.skin--responsive .mw-parser-output .infobox-table{display:table!important}body.skin--responsive .mw-parser-output .infobox-table>caption{display:table-caption!important}body.skin--responsive .mw-parser-output .infobox-table>tbody{display:table-row-group}body.skin--responsive .mw-parser-output .infobox-table th,body.skin--responsive .mw-parser-output .infobox-table td{padding-left:inherit;padding-right:inherit}}
/* end https://en.wikipedia.org/ */
</style><table class="infobox vevent"><tbody><tr><th colspan="2" class="infobox-above summary">Intel oneAPI Math Kernel Library</th></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;"><a href="Programmer" title="Programmer">Developer(s)</a></th><td class="infobox-data"><a href="Intel" title="Intel">Intel</a></td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;">Initial release</th><td class="infobox-data">November 1994<span style="display:none"> (<span class="bday dtstart published updated">1994-11</span>)</span></td></tr><tr style="display: none;"><td colspan="2" class="infobox-full-data"></td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;"><a href="Software_release_life_cycle" title="Software release life cycle">Stable release</a></th><td class="infobox-data"><div style="margin:0px;">2024.2
/ June 14, 2024<span style="display:none"> (<span class="bday dtstart published updated">2024-06-14</span>)</span><sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup></div></td></tr><tr style="display:none"><td colspan="2">
</td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;">Written in</th><td class="infobox-data"><a href="C_(programming_language)" title="C (programming language)">C</a>/<a href="C%2B%2B" title="C++">C++</a>, <a href="OneAPI_(compute_acceleration)#Data_Parallel_C++" title="OneAPI (compute acceleration)">DPC++</a>, <a href="Fortran" title="Fortran">Fortran</a></td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;"><a href="Operating_system" title="Operating system">Operating system</a></th><td class="infobox-data"><a href="Microsoft_Windows" title="Microsoft Windows">Microsoft Windows</a>, <a href="Linux" title="Linux">Linux</a></td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;"><a href="Computing_platform" title="Computing platform">Platform</a></th><td class="infobox-data">CPU<sup id="cite_ref-official_2-0" class="reference"><a href="#cite_note-official-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup>
<ul><li><a href="Intel_Xeon" class="mw-redirect" title="Intel Xeon">Intel Xeon</a></li>
<li><a href="Intel_Core" title="Intel Core">Intel Core</a></li>
<li><a href="Intel_Atom" title="Intel Atom">Intel Atom</a></li></ul>
<p>GPU
</p>
<ul><li><a href="Intel_Graphics_Technology" title="Intel Graphics Technology">Intel UHD Graphics</a> for 11th generation Intel processors or newer</li>
<li>Intel Iris Xe graphics</li>
<li><a href="Intel_Arc" title="Intel Arc">Intel Arc</a> graphics</li>
<li><a href="Intel_Xe" title="Intel Xe">Intel Data Center GPU</a> Flex Series</li>
<li>Intel Data Center GPU Max Series</li></ul>
</td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;"><a href="Software_categories#Categorization_approaches" title="Software categories">Type</a></th><td class="infobox-data"><a href="Library_(computing)" title="Library (computing)">Library</a> and <a href="Software_framework" title="Software framework">framework</a></td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;"><a href="Software_license" title="Software license">License</a></th><td class="infobox-data"><a href="Freeware" title="Freeware">freeware</a> under ISSL<sup id="cite_ref-license_3-0" class="reference"><a href="#cite_note-license-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup></td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;">Website</th><td class="infobox-data"><span class="url"><a rel="nofollow" class="external text" href="https://www.intel.com/content/www/us/en/developer/tools/oneapi/onemkl.html">www<wbr>.intel<wbr>.com<wbr>/content<wbr>/www<wbr>/us<wbr>/en<wbr>/developer<wbr>/tools<wbr>/oneapi<wbr>/onemkl<wbr>.html</a></span> <span class="penicon autoconfirmed-show"></span></td></tr></tbody></table>
<p><b>Intel <a href="OneAPI_(compute_acceleration)" title="OneAPI (compute acceleration)">oneAPI</a> Math Kernel Library</b> (Intel <b>oneMKL</b>), formerly known as Intel Math Kernel Library, is a <a href="Library_(computer_science)" class="mw-redirect" title="Library (computer science)">library</a> of optimized math routines for science, engineering, and financial applications. Core math functions include <a href="BLAS" class="mw-redirect" title="BLAS">BLAS</a>, <a href="LAPACK" title="LAPACK">LAPACK</a>, <a href="ScaLAPACK" title="ScaLAPACK">ScaLAPACK</a>, sparse solvers, <a href="Fast_Fourier_transform" title="Fast Fourier transform">fast Fourier transforms</a>, and vector math.<sup id="cite_ref-cambridge_5-0" class="reference"><a href="#cite_note-cambridge-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-NSC_6-0" class="reference"><a href="#cite_note-NSC-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup>
</p><p>The library supports x86 CPUs and Intel GPUs<sup id="cite_ref-official_2-1" class="reference"><a href="#cite_note-official-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> and is available for <a href="Windows" class="mw-redirect" title="Windows">Windows</a> and <a href="Linux" title="Linux">Linux</a> <a href="Operating_system" title="Operating system">operating systems</a>.<sup id="cite_ref-cambridge_5-1" class="reference"><a href="#cite_note-cambridge-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-NSC_6-1" class="reference"><a href="#cite_note-NSC-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-OhioState_7-0" class="reference"><a href="#cite_note-OhioState-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup>
</p><p><i>Intel oneAPI Math Kernel Library</i> is not to be confused with the <a rel="nofollow" class="external text" href="https://github.com/uxlfoundation/oneMath">oneAPI Math Library (oneMath)</a>, formerly known as oneMKL Interfaces, which is an open-source <a href="Wrapper_library" title="Wrapper library">wrapper library</a> that allows DPC++ applications to call oneMKL routines that can be offloaded to multiple hardware architectures and vendors defined during runtime.<sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup>
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="History_and_licensing">History and licensing</h2></div>
<p>Intel launched the oneAPI Math Kernel Library in November 1994, and called it Intel BLAS Library.<sup id="cite_ref-mklman_9-0" class="reference"><a href="#cite_note-mklman-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup> In 1996, the library was renamed to Intel Math Kernel Library until April 2020, when intel oneMKL has become part of oneAPI initiative to support multiple hardware architectures, holding the current name Intel oneAPI Math Kernel Library.
</p><p>The library is available as part of oneAPI Toolkits and in a standalone form, free of charge under the terms of Intel Simplified Software License<sup id="cite_ref-license_3-1" class="reference"><a href="#cite_note-license-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> which allow redistribution.<sup id="cite_ref-licensing-faq_10-0" class="reference"><a href="#cite_note-licensing-faq-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup> Commercial support for Intel oneMKL is available when purchased as part of <a href="OneAPI_(compute_acceleration)" title="OneAPI (compute acceleration)">oneAPI</a> Base Toolkit.
</p><p>Following Apple’s transition away from x86 CPUs, Intel oneMKL last release available for <a href="MacOS" title="MacOS">macOS</a> is the version 2023.2.2 and it is scheduled for removal by the end of 2024.
</p>
<div class="mw-heading mw-heading2"><h2 id="Performance_and_vendor_lock-in">Performance and vendor lock-in</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1236090951">
/* start https://en.wikipedia.org/ */
.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}
/* end https://en.wikipedia.org/ */
</style><div role="note" class="hatnote navigation-not-searchable">See also: <a href="Intel_C%2B%2B_Compiler#Reception" title="Intel C++ Compiler">Intel C++ Compiler § Reception</a></div>
<p>MKL and other programs generated by the <a href="Intel_C%2B%2B_Compiler" title="Intel C++ Compiler">Intel C++ Compiler</a> and the <a href="Intel_C%2B%2B_Compiler" title="Intel C++ Compiler">Intel DPC++ Compiler</a> improve performance with a technique called function multi-versioning: a function is compiled or written for many of the x86 <a href="Instruction_set" class="mw-redirect" title="Instruction set">instruction set</a> extensions, and at run-time a "master function" uses the <a href="CPUID" title="CPUID">CPUID</a> instruction to select a version most appropriate for the current CPU. However, as long as the master function detects a non-Intel CPU, it almost always chooses the most basic (and slowest) function to use, regardless of what instruction sets the CPU claims to support. This has netted the system a nickname of <i>"cripple AMD" routine</i> since 2009.<sup id="cite_ref-agner-blog_11-0" class="reference"><a href="#cite_note-agner-blog-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup> As of 2020, Intel's MKL remains the numeric library installed by default along with many pre-compiled mathematical applications on Windows (such as <a href="NumPy" title="NumPy">NumPy</a>, <a href="SymPy" title="SymPy">SymPy</a>).<sup id="cite_ref-redditCom2020Update1_12-0" class="reference"><a href="#cite_note-redditCom2020Update1-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-hpccs_13-0" class="reference"><a href="#cite_note-hpccs-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup> Although relying on the MKL, <a href="MATLAB" title="MATLAB">MATLAB</a> implemented a workaround starting with Release 2020a which ensures full support for AVX2 by the MKL also for non Intel (AMD) CPUs.<sup id="cite_ref-14" class="reference"><a href="#cite_note-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Details">Details</h2></div>
<div class="mw-heading mw-heading3"><h3 id="Functional_categories">Functional categories</h3></div>
<p>Intel oneMKL has the following functional categories:<sup id="cite_ref-15" class="reference"><a href="#cite_note-15"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup>
</p>
<ul><li><b><a href="Linear_algebra" title="Linear algebra">Linear algebra</a>:</b> BLAS routines are vector-vector (Level 1), matrix-vector (Level 2) and matrix-matrix (Level 3) operations for real and complex single and double precision data. LAPACK consists of tuned LU, Cholesky and QR factorizations, eigenvalue and least squares solvers. MKL also includes Sparse BLAS, <a href="ScaLAPACK" title="ScaLAPACK">ScaLAPACK</a>, Sparse Solver, <a href="Eigenvalue_algorithm" title="Eigenvalue algorithm">Extended Eigensolver</a> (FEAST, PARDISO), <a href="PBLAS" title="PBLAS">PBLAS</a> and BLACS. MKL is even better at small dimensions than <a rel="nofollow" class="external text" href="https://github.com/libxsmm/libxsmm">libxsmm</a>.
<dl><dd>Since oneMKL uses standard interfaces for BLAS and LAPACK, the application which uses other implementations can get better performance on Intel and compatible processors by re-linking with MKL libraries.</dd></dl></li>
<li>oneMKL includes a variety of <b><a href="Fast_Fourier_transform" title="Fast Fourier transform">Fast Fourier Transforms</a> (FFTs)</b> from 1D to multidimensional, complex to complex, real to complex, and real to real transforms of arbitrary lengths. Applications written with the open source <a href="Fastest_Fourier_Transform_in_the_West" title="Fastest Fourier Transform in the West">FFTW</a> can be easily ported to MKL by linking with interface wrapper libraries provided as part of MKL for easy migration.
<dl><dd>Cluster versions of LAPACK and FFTs are also available as part of MKL to take advantage of MPI parallelism in addition to single node parallelism from multithreading.</dd></dl></li>
<li><b>Vector math</b> functions include computationally intensive core mathematical operations for single and double precision real and complex data types. These are similar to libm functions from compiler libraries but operate on vectors rather than scalars to provide better performance. There are various controls for setting accuracy, error mode and denormalized number handling to customize the behavior of the routines.</li>
<li><b><a href="Statistics" title="Statistics">Statistics</a></b> functions include random number generators and probability distributions, optimized for multicore processors. Also included are compute-intensive in and out-of-core routines to compute basic statistics, estimation of dependencies etc.</li>
<li><b>Data fitting</b> functions include splines (linear, quadratic, cubic, look-up, stepwise constant) for 1-dimensional interpolation that can be used in data analytics, geometric modeling and surface approximation applications.</li>
<li><b><a href="Partial_differential_equation" title="Partial differential equation">Partial Differential Equations</a></b></li>
<li><b><a href="Nonlinear_programming" title="Nonlinear programming">Nonlinear Optimization Problem Solvers</a></b></li></ul>
<p>Once, oneMKL included <a href="Deep_learning" title="Deep learning">Deep Neural Network</a> functions, but they were removed in version 2020 as a spin-off that originated the open-source Intel oneAPI Deep Neural Network Library.<sup id="cite_ref-16" class="reference"><a href="#cite_note-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="OneAPI_(compute_acceleration)" title="OneAPI (compute acceleration)">OneAPI (compute acceleration)</a></li>
<li><a href="List_of_numerical_libraries" title="List of numerical libraries">List of numerical libraries</a></li>
<li><a href="Automatically_Tuned_Linear_Algebra_Software" title="Automatically Tuned Linear Algebra Software">Automatically Tuned Linear Algebra Software</a> (ATLAS)</li>
<li><a href="GotoBLAS" title="GotoBLAS">GotoBLAS</a> and <a href="OpenBLAS" title="OpenBLAS">OpenBLAS</a></li>
<li><a href="Integrated_Performance_Primitives" title="Integrated Performance Primitives">Integrated Performance Primitives</a></li>
<li><a href="Intel" title="Intel">Intel</a> Cryptography Primitives Library</li>
<li><a href="Numerical_Library_Collection" class="mw-redirect" title="Numerical Library Collection">Numerical Library Collection</a> – by NEC for their vector processor</li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */
.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}
/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap mw-references-columns"><ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */
.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}
/* end https://en.wikipedia.org/ */
</style><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://software.intel.com/content/www/us/en/develop/articles/oneapi-math-kernel-library-release-notes.html">"Intel® Math Kernel Library Release Notes and New Features"</a>. <i>software.intel.com</i>.</cite></span>
</li>
<li id="cite_note-official-2"><span class="mw-cite-backlink">^ <a href="#cite_ref-official_2-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-official_2-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://software.intel.com/oneapi/onemkl">Intel® oneAPI Math Kernel Library (oneMKL) | Intel® Software</a></span>
</li>
<li id="cite_note-license-3"><span class="mw-cite-backlink">^ <a href="#cite_ref-license_3-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-license_3-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://software.intel.com/en-us/license/intel-simplified-software-license">"Intel Simplified Software License"</a>.</cite></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://spec.oneapi.io/versions/latest/elements/oneMKL/source/index.html">"OneMKL — oneAPI Specification 1.1-rev-1 documentation"</a>.</cite></span>
</li>
<li id="cite_note-cambridge-5"><span class="mw-cite-backlink">^ <a href="#cite_ref-cambridge_5-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-cambridge_5-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.its.hku.hk/services/research/hpc/software/mkl">"Intel Math Kernel Library"</a>.</cite></span>
</li>
<li id="cite_note-NSC-6"><span class="mw-cite-backlink">^ <a href="#cite_ref-NSC_6-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-NSC_6-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.nsc.liu.se/software/math-libraries/">"Intel Math Kernel Library (MKL)"</a>.</cite></span>
</li>
<li id="cite_note-OhioState-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-OhioState_7-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.osc.edu/documentation/software-list/mkl-intel-math-kernel-library">"MKL - Intel Math Kernel Library"</a>. 23 April 2012.</cite></span>
</li>
<li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://github.com/oneapi-src/oneMKL">"oneapi-src/oneMKL"</a>. oneAPI-SRC. 19 March 2021. <q>oneMKL interfaces are an open-source implementation of the oneMKL Data Parallel C++ (DPC++) interface according to the oneMKL specification. It works with multiple devices (backends) using device-specific libraries underneath.</q></cite></span>
</li>
<li id="cite_note-mklman-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-mklman_9-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.scc.kit.edu/scc/docs/HP-XC/mkl72/mklman.pdf">"Intel Math Kernel Library, Reference Manual, Version Information"</a> <span class="cs1-format">(PDF)</span>. c. 2004. p. ii<span class="reference-accessdate">. Retrieved <span class="nowrap">July 25,</span> 2024</span>.</cite></span>
</li>
<li id="cite_note-licensing-faq-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-licensing-faq_10-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://software.intel.com/en-us/mkl/license-faq">"Intel Math Kernel Library Licensing FAQ"</a>.</cite></span>
</li>
<li id="cite_note-agner-blog-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-agner-blog_11-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFAgner_Fog" class="citation web cs1"><a href="Agner_Fog" title="Agner Fog">Agner Fog</a>. <a rel="nofollow" class="external text" href="https://www.agner.org/optimize/blog/read.php?i=49">"Agner's CPU blog - Intel's "cripple AMD" function"</a>.</cite></span>
</li>
<li id="cite_note-redditCom2020Update1-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-redditCom2020Update1_12-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://old.reddit.com/r/matlab/comments/dxn38s/howto_force_matlab_to_use_a_fast_codepath_on_amd/fm2j83e/">"Comment chain in: r/matlab - How-To force Matlab to use a fast codepath on AMD Ryzen/TR CPUs - up to 250% performance gains"</a>. <i>reddit</i>. 31 March 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">2020-06-06</span></span>.</cite></span>
</li>
<li id="cite_note-hpccs-13"><span class="mw-cite-backlink"><b><a href="#cite_ref-hpccs_13-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://kb.hlrs.de/platforms/index.php/Libraries(Hawk)">"High-Performance Computing Center Stuttgart - Knowledge Base - Libraries(Hawk)"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2020-06-06</span></span>.</cite></span>
</li>
<li id="cite_note-14"><span class="mw-cite-backlink"><b><a href="#cite_ref-14">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.extremetech.com/computing/308501-crippled-no-longer-matlab-2020a-runs-amd-cpus-at-full-speed">"Crippled No Longer: Matlab Now Runs on AMD CPUs at Full Speed - ExtremeTech"</a>. <i>www.extremetech.com</i>. 31 March 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">2020-10-29</span></span>.</cite></span>
</li>
<li id="cite_note-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-15">^</a></b></span> <span class="reference-text"><cite id="CITEREFadmin2019" class="citation web cs1">admin (2019-11-14). <a rel="nofollow" class="external text" href="https://software.intel.com/en-us/mkl-developer-reference-c">"Developer Reference for Intel® Math Kernel Library - C"</a>. <i>software.intel.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2019-11-27</span></span>.</cite></span>
</li>
<li id="cite_note-16"><span class="mw-cite-backlink"><b><a href="#cite_ref-16">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://oneapi-src.github.io/oneDNN/dev_guide_transition_to_dnnl.html">"Transitioning from Intel MKL-DNN to oneDNN"</a>. <i>Intel</i><span class="reference-accessdate">. Retrieved <span class="nowrap">25 July</span> 2024</span>.</cite></span>
</li>
</ol></div></div>
<div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2></div>
<ul><li><span class="official-website"><span class="url"><a rel="nofollow" class="external text" href="https://www.intel.com/content/www/us/en/developer/tools/oneapi/onemkl.html">Official website</a></span></span> </li>
<li><a rel="nofollow" class="external text" href="https://software.intel.com/en-us/mkl/documentation/get-started">Documentation</a></li>
<li><a rel="nofollow" class="external text" href="https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/bd-p/oneapi-math-kernel-library">oneMKL User Forum</a></li>
<li><a rel="nofollow" class="external text" href="https://spec.oneapi.io/versions/latest/elements/oneMKL/source/index.html">oneAPI oneMKL Specification</a></li>
<li><a rel="nofollow" class="external text" href="https://www.intel.com/content/www/us/en/developer/articles/technical/onemkl-benchmarks-suite.html">oneMKL Benchmarks Suite</a></li></ul>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">
/* start https://en.wikipedia.org/ */
.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}
/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1236075235">
/* start https://en.wikipedia.org/ */
.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}
/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox" aria-labelledby="Intel_software236" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><style data-mw-deduplicate="TemplateStyles:r1239400231">
/* start https://en.wikipedia.org/ */
.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}
/* end https://en.wikipedia.org/ */
</style><div id="Intel_software236" style="font-size:114%;margin:0 4em"><a href="Intel" title="Intel">Intel</a> software</div></th></tr><tr><td class="navbox-abovebelow" colspan="2"><div>Items <i>in italics</i> are no longer maintained or have planned end-of-life dates.</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Development</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Intel_Parallel_Studio" title="Intel Parallel Studio">Parallel Studio</a></li>
<li><a href="Intel_C%2B%2B_Compiler" title="Intel C++ Compiler">C++ Compiler</a></li>
<li><a href="Intel_Fortran_Compiler" title="Intel Fortran Compiler">Fortran Compiler</a></li>
<li><a href="Intel_Advisor" title="Intel Advisor">Advisor</a></li>
<li><a href="Intel_Inspector" title="Intel Inspector">Inspector</a></li>
<li><i><a href="INTERP/80" class="mw-redirect" title="INTERP/80">INTERP/80</a></i></li>
<li><a href="VTune" title="VTune">VTune</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Components</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Data_Analytics_Library" title="Data Analytics Library">Data Analytics Library</a> (DAL)</li>
<li><a href="Integrated_Performance_Primitives" title="Integrated Performance Primitives">Integrated Performance Primitives</a> (IPP)</li>
<li> (MKL)</li>
<li><a href="Threading_Building_Blocks" title="Threading Building Blocks">Threading Building Blocks</a> (TBB)</li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Open source</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Data_Analytics_Library" title="Data Analytics Library">Data Analytics Library</a> (DAL)</li>
<li><a href="Threading_Building_Blocks" title="Threading Building Blocks">Threading Building Blocks</a> (TBB)</li>
<li><a href="Tizen" title="Tizen">Tizen</a></li>
<li><a href="OpenVINO" title="OpenVINO">OpenVINO</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Software programs</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Havok_(company)" title="Havok (company)">Telekinesys Research</a><sup>1</sup>
<ul><li><a href="Havok_(software)" title="Havok (software)">Havok</a><sup>1</sup></li>
<li><a href="Vision_(game_engine)" title="Vision (game engine)">Vision</a><sup>1</sup></li></ul></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Organizations</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Intel_Developer_Zone" title="Intel Developer Zone">Developer Zone</a></li>
<li><a href="Intel_Research" class="mw-redirect" title="Intel Research">Research</a></li></ul>
</div></td></tr><tr><td class="navbox-abovebelow hlist" colspan="2"><div>
<ul><li><span style="font-size: 85%;"><sup>1</sup><i>Sold to <a href="Microsoft" title="Microsoft">Microsoft</a></i></span></li></ul>
</div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="Numerical_linear_algebra64" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Numerical_linear_algebra64" style="font-size:114%;margin:0 4em"><a href="Numerical_linear_algebra" title="Numerical linear algebra">Numerical linear algebra</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Key concepts</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Floating_point" class="mw-redirect" title="Floating point">Floating point</a></li>
<li><a href="Numerical_stability" title="Numerical stability">Numerical stability</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Problems</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="System_of_linear_equations" title="System of linear equations">System of linear equations</a></li>
<li><a href="Matrix_decomposition" title="Matrix decomposition">Matrix decompositions</a></li>
<li><a href="Matrix_multiplication" title="Matrix multiplication">Matrix multiplication</a> (<a href="Matrix_multiplication_algorithm" title="Matrix multiplication algorithm">algorithms</a>)</li>
<li><a href="Matrix_splitting" title="Matrix splitting">Matrix splitting</a></li>
<li><a href="Sparse_matrix" title="Sparse matrix">Sparse problems</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Hardware</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="CPU_cache" title="CPU cache">CPU cache</a></li>
<li><a href="Translation_lookaside_buffer" title="Translation lookaside buffer">TLB</a></li>
<li><a href="Cache-oblivious_algorithm" title="Cache-oblivious algorithm">Cache-oblivious algorithm</a></li>
<li><a href="Single_instruction%2C_multiple_data" title="Single instruction, multiple data">SIMD</a></li>
<li><a href="Multiprocessing" title="Multiprocessing">Multiprocessing</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Software</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Automatically_Tuned_Linear_Algebra_Software" title="Automatically Tuned Linear Algebra Software">ATLAS</a></li>
<li><a href="MATLAB" title="MATLAB">MATLAB</a></li>
<li><a href="Basic_Linear_Algebra_Subprograms" title="Basic Linear Algebra Subprograms">Basic Linear Algebra Subprograms (BLAS)</a></li>
<li><a href="LAPACK" title="LAPACK">LAPACK</a></li>
<li><a href="Comparison_of_linear_algebra_libraries" title="Comparison of linear algebra libraries">Specialized libraries</a></li>
<li><a href="Comparison_of_numerical-analysis_software" title="Comparison of numerical-analysis software">General purpose software</a></li></ul>
</div></td></tr></tbody></table></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-07-27" href="https://en.wikipedia.org/wiki/?title=Math_Kernel_Library&oldid=1302690228">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
</body></html>